The Kansas City Standard (KCS), or Byte standard, is a digital data format for audio cassette drives. Byte magazine sponsored a symposium[1][2] in November 1975 in Kansas City, Missouri to develop a standard for storage of digital (micro)computer data on inexpensive consumer quality cassettes, at a time when floppy disk drives cost over $1000 USD each.[3]
The two-day meeting was attended by 18 people who settled on a system based on Don Lancaster's design, published in Byte magazine's first issue. After the meeting, Lee Felsenstein (Processor Technology) and Harold Mauch (Percom Data Company) wrote the standard.
A cassette interface is similar to a modem connected to a serial port. The 1s and 0s from the serial port are converted to audio tones using audio frequency-shift keying (AFSK). A '0' bit is represented as four cycles of a 1200 Hz sine wave, and a '1' bit as eight cycles of 2400 Hz. This gives a data rate of 300 baud. Each frame starts with one start bit (a '0') followed by eight data bits (least significant bit first) followed by two stop bits ('1's). So each frame is 11 bits, for a data rate of 27 3/11ths bytes per second.
The February 1976 issue of Byte had a report on the symposium and the March issue featured two hardware examples by Don Lancaster[4] and Harold Mauch.[5] The 300 baud rate was reliable but slow. (The typical 8-kilobyte BASIC program took five minutes to load.) Most audio cassette circuits would support higher speeds.
Processor Technology developed the popular CUTS (Computer Users' Tape Standard) which worked at either 300 or 1200 baud. They provided the S-100 bus CUTS Tape I/O interface board which offered both CUTS and Kansas City Standard support to any S-100 system. Processor Technology also sold many programs on cassette tape. CUTS format on one side, and Kansas City Standard on the other side.
Contents |
In August 1976 at the Personal Computing show in Atlantic City, Bob Marsh of Processor Technology approached Bob Jones, the publisher of Interface Age magazine, about pressing software onto vinyl records. Processor Technology provided an 8080 program to be recorded. This test record did not work and they were unable to devote more time to the effort.[6]
Daniel Meyer and Gary Kay of Southwest Technical Products arranged for Robert Uiterwyk to provide his 4K BASIC interpreter program for the 6800 microprocessor. The idea was to record the program on audio tape in the "Kansas City Standard" format then make a master record from the tape. Eva-Tone made "sound sheets" on thin vinyl that would hold one song.[7] These were inexpensive and could be bound in a magazine.
Bill Turner[8] and Bill Blomgren[9] of MicroComputerSystems Inc. worked with EVA-TONE and developed a successful process. The intermediate stage of recording to tape produced dropouts so a SWTPC AC-30[10] cassette interface was connected directly to the record cutting equipment.
The May 1977 issue of Interface Age contained the first "Floppy-ROM", a 33⅓ RPM record with about 6 minutes of "Kansas City Standard" audio.
The September 1978 Floppy-Rom Number 5:. Side 1 Apple Basic "the automated dress pattern". Side 2 IAPS format "A program for writing letters".
The original standard recorded data as "marks" (one) and "spaces" (zero). A mark bit consisted of eight cycles at a frequency of 2400 Hz, while a space bit consisted of four cycles at a frequency of 1200 Hz. A word, usually one byte (8 bits) in length, was recorded in little endian order, i.e. least significant bit first. 7-bit words were followed by a parity bit.
Acorn Computers Ltd implemented a 1200 baud variation of CUTS in their BBC Micro and Acorn Electron microcomputers, which reduced a '0' bit to one cycle of a 1200 Hz sine wave and a '1' bit to two cycles of a 2400 Hz wave. Standard encoding includes a '0' start bit and '1' stop bit around every 8 bit piece of information, giving an effective data rate of 960 bits per second.
Also, these machines recorded data in 256-byte blocks interspersed with gaps of carrier tone, each block carrying a sequence number, so that it was possible to rewind the tape and resume at the proper block when a read error occurred.
Early microcomputers (several of them S-100 based):
Home/personal computers:
Programmable calculators:
Other devices:
|